ロボットシステムに教示する方法
专利摘要:
最初に、対象物モデルライブラリ及び作業モジュールライブラリを提供する。対象物モデルライブラリは、処理すべき実際の対象物に幾何学的に類似する少なくとも1つの対象物モデルを含む。作業モジュールライブラリは、行うべき各作業用の少なくとも1つの作業モジュールを含む。それから、処理すべき各実際の対象物に対して、対象物モデルライブラリにおける対象物モデルとの関連により、及び、対象物モデルの幾何学的パラメータの明細により、仮想対象物を定義付けする。その後、行うべき各作業に対して、作業モジュールライブラリから作業モジュールを選択すると共に、その作業パラメータを特定することにより、その操作を定義付けする。随意に、定義付けされた各仮想対象物に対して、その仮想対象物には、対応する実際の対象物を前もって撮像した少なくとも1つの二次元画像を関係づける。 公开号:JP2011516283A 申请号:JP2011502460 申请日:2009-11-10 公开日:2011-05-26 发明作者:チーユー リン 申请人:リン チーユーLIN, Chyi−Yeu; IPC主号:B25J9-22
专利说明:
[0001] 本発明は、一般的にロボットシステムに関し、特に、所定の対象物モデルとの類推に従って、ロボットシステムが対象物を操作することができるように、ロボットシステムに教示する方法に関する。] 背景技術 [0002] 本明細書で云うロボットシステムとは、以下のような物理的システムのことを言い、それは、人工的なものであり、1つ以上の回転又は並進軸で動き、プログラム可能であり、その環境を感知することができ、かつ、自動制御、前もってプログラムされたシーケンス又は人工知能を用いて、その環境内の対象物を操作し又はそれと相互作用することができる物理的システムである。] [0003] 過去10年間に、知能ロボットシステムは急速に発展し、いくつか市販されたものさえある。典型的な例を数例挙げると、アイロボット(iROBOT(登録商標))社による電気掃除ロボットのルンバ(Roomba(登録商標))、ソニー(登録商標)(SONY(登録商標))社により設計され製造されたロボットのペットのアイボ(AIBO(登録商標))及びホンダ(登録商標)(Honda(登録商標))社により創造された人型ロボットのアシモ(登録商標)(ASIMO(登録商標))がある。それらは数10年に及ぶ先端研究を具体化したものであるにもかかわらず、これらのロボットシステムは、なお、娯楽の「おもちゃ」と見なされているにすぎない。これは、主に、水をびんからコップへ注ぐような、(人間にとって)非常に簡単で手馴れた動きでさえ、ロボットシステムに「学ばせる」ことは、非常に難しいためである。] [0004] 他方、特に自動車産業及び電子産業で、速さ、正確さ、信頼性又は耐久性を要する仕事に対し、世界中で作動中の工場ロボット又はサービスロボットとして呼ばれる100万個以上の産業用ロボットがあると推定される。ルンバ(Roomba)、アイボ(AIBO)及びアシモ(ASIMO)のような自律型ロボットとは対照的に、これらの産業用ロボットは、高度に規定され、制御されるタスクにおいて、人間の作業能率より優れている。すなわち、ワークピースは、パレット上に一緒に積み重ねられる代わりに、ベルト上に個々に、かつ、正確に位置付けられることが求められる。しかしながら、これらの産業用ロボットにとっては、わずかな変更でさえも、再プログラミング及び修正には数日又は数週間を要することになる。] 発明が解決しようとする課題 [0005] 従って、これらの柔軟性のないことを補償するために、視覚誘導ロボットがある。視覚誘導ロボットシステムは、その環境及びその環境内の対象物を察知するのが、主に、1つ以上の内蔵の画像取得装置及び/又はレーザ装置によるロボットシステムである。例えば、ファナック(登録商標)(FANUC(登録商標))社により製造されたM-420iAは、ロボットの2つのアームを制御するための高速カメラシステムを用いることにより、伝動ベルト上の最大120個までの異なるワークピースをつかむことができる。これらの視覚誘導ロボットの典型的なシナリオは、以下のとおりである。ロボットは、カメラを位置付けて、照明を最適な画像取得位置に調整するようにプログラムされる。ソフトウェアプログラムは、それから、取得した画像を処理して、ワークピースの位置及び方位の修正をするように、ロボットに命令する。これらの視覚誘導ロボットは、「盲目の」ロボットよりも、もっと融通が利く。1つの対象物をある位置から別の位置へ動かすことは、プログラムするのには容易であるが、これらのロボットは、簡単な部品交換に適応させることでさえ、教えて一体化するのに非常に長い時間を必要とする。こうした見解により、ロボットシステムが主流になるために最も顕著に障害になっていることは、ロボットが一種類のジョブ、即ち、ピックアンドプレースのようなジョブしかできないことのように思われる。ロボットシステムに任意の新しい種類のジョブを導入するためには、教示することに時間がかかり過ぎ、従って、ロボットシステムに新たな「割当仕事」をさせることには費用がかかり過ぎる。産業用ロボットでさえ、アームの動きを固定されない軌道にするように教えることは困難である。] [0006] ロボットシステムに簡単なタスクを教示するのに、本発明者は、類推の概念がキーになり得ると信じる。類推は、人間の課題解決、意思決定、認識、記憶、創造、感情、説明及びコミュニケーションにおいて、顕著な役割を果たす。類推は、場所、対象物及び、例えば、顔の認知及び顔認識システムにおける、人の同定のような後ろ盾となる基本タスクである。類推は、「認識の核心」であると論じられている。類推の能力が何らかの方法でロボットシステムに組み込まれれば、ロボットシステムには、従来の初歩から一歩一歩進めていく手法よりも遥かに速く教示することができる。] 課題を解決するための手段 [0007] 本発明は、類推を用いることによりトレーニング時間及び労力を顕著に低減させてロボットシステムに教示する新規な方法を提供する。ロボットシステムは、少なくとも通常の操作ハードウェア及び計算ハードウェアを含まなければならない。] [0008] 本方法の実施形態は、以下の主要なステップを含む。最初に、対象物モデルライブラリ及び作業モジュールライブラリを提供する。ロボットシステムにより処理すべき各実際の対象物に対して、その実際の対象物に少なくとも幾何学的に類似する三次元形状を定義付けする少なくとも1つの対象物モデルがあるか、又は、その定義付けする形状を、実際の対象物に少なくとも幾何学的に似るように、組み合わせることができる2つ以上の対象物モデルがある。各対象物モデルは三次元形状を記述する多くの予め定めた幾何学的パラメータを有する。実際の対象物に行うべき各作業に対しては、作業モジュールライブラリに含まれる少なくとも1つの作業モジュールがあり、各作業モジュールは、その作業の少なくとも1つの目標を特定するための、多くの予め定めた作業パラメータ及びその目標を果たすべくその作業に関連する追加の情報ピースを有する。] [0009] それから、処理すべき各実際の対象物に対して、仮想対象物を定義付けする。この仮想対象物の定義付けは、仮想対象物用の固有の名称、対象物モデルライブラリに含まれる1つの対象物モデル又は多くの対象物モデルの組み合わせに対する参照、及び、実際の対象物に従う対象物モデルの幾何学的パラメータに対する値の明細を含める。] [0010] その後、実際の対象物に行うべき各作業に対して、その作業を定義付けする。この作業の定義付けには、作業モジュールライブラリに含まれる作業モジュールに対する参照、実際の対象物を表わす仮想対象物及び行うべき作業に従う作業パラメータに対する値の明細を含む。] [0011] 随意に、教示すべきロボットシステムが、少なくとも1つの、画像取得装置を有するならば、定義付けした各仮想対象物に対しその仮想対象物により表わされる実際の対象物を前もって撮像した少なくとも1つの二次元画像を提供し、前記仮想対象物に関係づける。このステップの後に、ロボットシステム用のタスク記述は、完了し、このタスク記述は、処理すべき実際の対象物に対応する1つ以上の仮想対象物の定義付け、実際の対象物に行うべき作業に対応する1つ以上の作業の定義付け、及び、随意に、対応する仮想対象物に関連づけられる実際の対象物の1つ以上の画像を含む。] [0012] 本発明の前述の及び他の目的、特徴、態様及び利点は、添付図面を適切に参照して、以下の詳細な説明を注意深く読めばより良く理解される。] 図面の簡単な説明 [0013] 本発明により教示すべきロボットシステムを示す概略図である。 図1aのロボットシステムに教示するための本発明によるソフトウェアシステムを示す概略図である。 図1aのロボットシステムにより処理すべき2つの実際の対象物を示す概略図である。 本発明の対象物モデルライブラリ内で定義付けられる、2つ以上の基本形状の組み合わせにより、図2aの第1の実際の対象物に如何にして近似させるかを示す概略図である。 本発明の対象物モデルライブラリ内で定義付けられる、複雑な形状により、図2aの第2の実際の対象物に如何にして近似させるかを示す概略図である。 本発明の作業を定義付けするステップの間に提供される追加の情報ピースを示す概略図である。 仮想対象物の幾何学的パラメータと作業モジュールの作業パラメータとにより提供される情報に基づく、ロボットシステムの知的軌道計画を示す概略図である。 仮想対象物の幾何学的パラメータと作業モジュールの作業パラメータとにより提供される情報に基づく、ロボットシステムの他の知的軌道計画を示す概略図である。 本発明により作られるタスク記述を示す概略図である。 本発明の一実施形態による図1aのロボットシステムに教示するための主要なステップを示すフロー図である。 本発明の別の実施形態による図1aのロボットシステムに教示するための主要なステップを示すフロー図である。] 図1a 図2a 実施例 [0014] 以下の説明は、例示的な実施形態に過ぎず、本発明の範囲、適用性又は構成を、決して制限する意図はない。むしろ、以下の説明は、本発明の例示的な実施形態を実施するために都合のいい実例を提供する。添付の特許請求の範囲に記載の本発明の範囲から逸脱しないで、記載された要素の機能及び配置において、記載された実施形態に様々な変更をすることができる。] [0015] 本発明は、ロボットシステムを特定のタイプにすることにいかなる要求も課すことはない。ロボットシステムは、脚型、又は車輪型、又は固定型ロボットとするか、又は、2つのアームを有する人型の形状にするか、又は、1つのアームを有する工場の固定型ロボットとにすることができる。ロボットシステムの利用法も制限されず、それは、家事用の自律型家庭用ロボット又は電子部品のピックアンドプレース用の産業用ロボットとにすることができる。] [0016] 図1aに例示するように、本発明によるロボットシステム1は、任意の従来のロボットのように、図に示す胴体10及び少なくともアーム12のような、実際の対象物を処理するための、適切な対象物操作ハードウェア並びに胴体10及びアーム12を駆動する様々なモータ及びアクチュエータ(図示せず)を有している。操作ハードウェアの詳細は、当業者には、自明である。ロボットシステム1は、また任意の従来のロボットのように、操作ハードウェアを制御するためのプロセッサ、コントローラ、メモリ、記憶装置等(図示せず)のような適切な計算ハードウェア20も含む。] 図1a [0017] 本発明によれば、ロボットシステム1には、1つ以上の実際の対象物に作業を行うように教示しなければならず、ロボットシステム1は、実際の対象物を「見る」ためのいくつかの光学的認識手段を持たなければならない。光学的認識手段は、以下に限定されないが、実際の対象物の二次元写真画像を撮ることができるCCD(電荷組み合わせ素子)カメラ及び実際の対象物の三次元プロファイルデータを得ることができる3Dレーザスキャナのような画像取得装置を含むことができる。言い換えれば、ロボットシステム1は、少なくとも1つの画像取得装置又は少なくとも1つの3Dレーザスキャナ又は両方を持たなくてはならない。簡単にするために、以下では、ロボットシステム1は、CCD(電荷組み合わせ素子)カメラのような少なくとも1つの画像取得装置30を含むものとする。画像取得装置30は、人型ロボットの頭部におけるもの又はサービスロボットのアームにおけるもののようにロボットシステム1の胴体10に組み込むことができる。画像取得装置30は、伝動ベルトの真上に位置付けられ、伝動ベルトで送られる部品に取り組むサービスロボットに接続されるカメラのように、ロボットシステム1の胴体10の外部にあって、有線又は無線の通信手段によりロボットシステム1に接続されるものとすることもできる。この通信手段は、画像取得装置30により取得された画像を処理用の計算ハードウェア20に配信することができる。] [0018] ロボットシステム1に或る特殊なタスクを行わせることを教示するために、図1bに例示するような、ソフトウェアシステム40を提供する。オペレータ(すなわち、ロボットシステム1の教師)は、ソフトウェアシステム40により提供される環境での特殊なタスクをプログラムし、ロボットシステム1が当該タスクを首尾良く行うことができるように、ロボットシステム1の計算ハードウェア20用の「タスク記述」を生成する。言い換えれば、オペレータはソフトウェアシステム40を用いてロボットシステム1に教示する。なお、ソフトウェアシステム40は、同じ計算ハードウェア20上で実行することができ、ソフトウェアシステム40からのタスク記述は、タスクを行うために、計算ハードウェア20により直接処理される。或いは、ソフトウェアシステム40は、別個の計算プラットフォーム上で実行し、ソフトウェアシステム40からのタスク記述は、ロボットシステム1がそれに応じてタスクを行うことができるように、(いくつかの有線又は無線の通信手段を介して)計算ハードウェア20にロードすることもできる。] 図1b [0019] ロボットシステム1に教示する第1のステップは、ロボットシステム1により処理すべき実際の対象物を定義付けすることである。例えば、図2aに例示するように、ロボットシステム1には、第1の実際の対象物600(すなわち、ペン)及び第2の実際の対象物700(すなわち、ペン筒(brush pot))を処理することを教示しなければならない。この対象物を定義付けするステップは、あらかじめ準備した対象物モデルライブラリ100を必要とする。図1bに例示するように、対象物モデルライブラリ100は、ソフトウェアシステム40の一部であり、ファイル、データ基本となるもの又は類似のソフトウェア構成物に格納された基本形状の多くの対象物モデルを少なくとも含む。用語「基本形状」は、コンピュータグラフィックの3Dモデリング及びCADシステムで通常用いられている。球、立方体又は四角形、環状、円柱、角錐等のような基本形状は、多くの他の形状及び形態のための構成要素であるため、基本形状であると考えられる。定性的には、用語「基本形状」を正確に定義することは難しい。観察から、「基本形状」は、いくつかの共通の形状特徴を共有する。すなわち、(1)通常、真っすぐなエッジのみを含む。(2)通常、変曲点のない単純な曲線のみを含む。(3)通常、他の基本形状に分解することができない。上記のように、本発明の主な考えは、ロボットシステム1に教示するために、類推機能を組み込むことであり、類似するいくつかの「基本となるもの」がなければならない。対象物モデルライブラリ100の対象物モデル101が、まさに、その「基本となるもの」である。] 図1b 図2a [0020] 対象物モデルライブラリ100を有することの根拠は、実際の対象物のほとんどが、これらの基本形状の内の1つ又はいくつかの単純な2項関係(加算、減算等)による2つ以上のこれらの基本形状の組み合わせにより、近似することができるという仮定に基づいている。例えば、図2bに例示するように、実際の対象物600(すなわち、ペン)に対して、対象物モデルライブラリ100は、円柱102の対象物モデル101及び円錐103の別の対象物モデル101を含み、実際の対象物600は、円柱102の一端に円錐103を単に付け足すことにより近似される。なお、円柱102及び円錐103の基本形状は、六角形断面のような実際の対象物600の特定の細部を有していない。最も重要なことは、基本形状が、ロボットシステム1により処理すべき実際の対象物又はその一部に幾何学的に似ており、従って、その実際の対象物又はその一部に近似するものを提供することである。] 図2b [0021] さらに、対象物モデルライブラリ100は、基本形状ではなく、処理すべき実際の対象物と同一又はほぼ類似する1つ以上の対象物モデル101も含むことができる。例えば、図2cに例示するように、実際の対象物700(すなわち、ペン筒)に対して、対象物モデルライブラリ100は、実際の対象物700と幾何学的に同一である管状の形状の対象物モデル101を含むことができる。しかしながら、その管状の形状は、基本形状の円柱から、直径が小さい別の基本形状の円柱を取り去ることにより表わすことができるので、基本形状ではない。従って、対象物モデルライブラリ100は、実際の対象物を処理した後にまさにモデル化されるコカ・コーラのびん、レンチ等のような複雑な幾何学的形状の対象物モデルを含むこともあり得る。] 図2c [0022] 各基本形状又は複雑な形状の対象物モデル101は、多くの幾何学的パラメータを含む。幾何学的パラメータは、ある対象物モデル101と異なる形状の別の対象物モデルとでは異なり得る。例えば、円柱102の対象物モデル101は、以下のベクトル形式で表わすことができる。 CYLINDER(円柱)={l,d} ここで、l,dは、円柱形状の長さ及び直径である。 円錐103の対象物モデル101は、 CONE(円錐)={d,h} で表わすことができる。ここで、d,hは、円錐形状の底面の直径及び高さである。 筒(pot)の対象物モデル101は、 POT={l,d,w} で表わすことができる。ここで、l,d及びwは、筒形状の長さ、直径及び厚さである。] [0023] なお、対象物モデルライブラリ100は、基本形状の対象物モデル101のみを含むことができる。或いは、対象物モデルライブラリ100は、基本形状及び複雑特注形状の両方の形状の対象物モデル101を含むことができる。なお、必要であれば、対象物モデルライブラリを構築した後に、その対象物モデルライブラリ100に、後で、追加の対象物モデル101を、追加することもできる。] [0024] 先に述べたように、対象物モデルライブラリ100は、類推用の「基本となるもの」を提供する。この機能を達成するために、対象物定義付けステップは、処理すべき各実際の対象物に対する仮想対象物をオペレータに定義付けさせる。このようにして定義付けした各仮想対象物に対しては、仮想対象物用の固有の名称があり、その名称(及び、従って、仮想対象物)は、対象物モデルライブラリ100の1つの対象物モデル101又は2つ以上の対象物モデル101の組み合わせに関連付ける。図2aの例に対しては、2つの仮想対象物を、例示の疑似コードを用いることにより以下のように定義付けする。 Virtual Object(仮想対象物) A:CONE+CYLINDER; B:POT; ここで、仮想対象物Aは、ペン600に近似するように、円錐を円柱の一端に加える際の、円錐の幾何学的パラメータ及び円柱の幾何学的パラメータの全てを有するように特定され、仮想対象物Bは、ペン筒700に近似するように、筒の形状の全ての幾何学的パラメータを有するように、特定される。] 図2a [0025] なお、上記の例は、プログラミング言語のシナリオを用いて記述しているけれども、同一の定義付けプロセスは、AutoCAD(登録商標)のようなCADシステムを用いるのと全く同じようにポイント・アンド・クリック操作でグラフィック環境にて、実際上もっと好ましく達成することができる。基本形状の選択及び組み合わせによりAutoCAD(登録商標)で3Dモデルを作成するのと全く同じように、仮想対象物をグラフィック環境内に定義付けすることは、関連技術の人々にとって容易に想像できることである。固有の名称及び対象物モデルとの関連に加えて、ソフトウェアシステム40は、次に、対応する実際の対象物に従って、幾何学的パラメータの値を、オペレータに特定させることができる。これは、再び疑似コードを用いて以下のように表わすことができる。 Virtual Object A:CONE(d=2cm、h=2cm)+CYLINDER(l=8cm、d=2cm); B:POT(l=5cm、d=3cm、w=0.5cm); 再びグラフィック環境の場合に、これは、基本形状の押し出し(extruding)及びスケーリング及び/又はパラメータ値の手入力により、達成することができる。] [0026] 要するに、対象物定義付けステップは、処理すべき各実際の対象物に対して、対象物モデルライブラリから1つの形状を選択するか又は多くの形状を組み合わせ、その形状又は形状の組み合わせに固有の名称を割り当て、実際の対象物に従って形状の幾何学的パラメータの値を特定することによって、仮想対象物を定義付けすることを伴う。言い換えれば、上記の例の場合に、オペレータは、対象物定義付けステップにて実際の対象物600及び700(すなわち、ペン及びペン筒)に近似する3Dモデルである仮想対象物A及びBを定義付けする。なお、対象物定義付けステップ内で、これらのサブステップ(すなわち、形状の選択、命名及びパラメータの初期化)の順序は、パラメータの初期化は常に形状の選択後に行わなければならないことを除いて、重要ではない。例えば、命名は、最初か最後のいずれでも行うことができる。] [0027] ロボットシステム1に教示する第2のステップは、何をすべきかロボットシステム1に命令するための1つ以上の作業を定義付けすることである。例えば、上記の例に従う例示的作業は、第1の実際の対象物600(すなわち、ペン)を持ち上げ、それから、第1の実際の対象物600の尖っている先端が上を向くように、第1の実際の対象物600を第2の実際の対象物700(すなわち、ペン筒)の中に置くことを、ロボットシステム1に命令することである。この作業定義付けステップは、図1bに例示するソフトウェアシステム40の一部である多くの作業モジュール201を含んでいる予め準備した作業モジュールライブラリ200を必要とする。対象物モデルライブラリ100を用いるのと同様に、ロボットシステム1に行わせるための前述した作業を特定するために、オペレータは、作業モジュールライブラリ200から、作業モジュールの1つ、例えば、1つの物を別の物の中に入れることに関するPUT-INSIDE(中に入れる)の作業モジュールを最初に選択する。] 図1b [0028] 各作業モジュール201は、設計者(例えば、プログラマー)により予め準備されたソフトウェア構成物である。オペレータの観点からすると、各作業モジュール201は、作業モジュール201の設計者により予め決められた多くの作業パラメータを有する。再び疑似コードを用いて、PUT-INSIDEの作業モジュールは、以下のように表わすことができる。 PUT-INSIDE(target1, target2, op3, op4, op5,…) ここで、target(目的物)1, target2, op3, op4,等は、全て、作業モジュールPUT-INSIDEの作業パラメータである。これらの作業パラメータの意味は、以下のとおりである。 −target1は、ロボットシステム1により持ち上げられるべき仮想対象物の参照である。 −target2は、target1を中に入れる別の仮想対象物の参照である。 −op3は、target1を持ち上げるために、そのどこを保持するかの参照である。 −op4は、target1のどちらの端部を最初にtarget2の中に入れるかの参照である。 −op5は、target2のどちら側にtarget1を挿入するかの参照である。 以下のようなことに関しての追加の作業パラメータがある。 −target2の軸線の場所及びtarget1をその軸線に対してどのような角度で挿入するかの参照である。 −target1の重量(ロボットシステム1が、target1を持ち上げるためにどれだけの力が必要であるかを知るため)の参照である。 −target1の本体の強度(ロボットシステム1が、target1をつかむ際に、どれだけの力を及ぼすかを知るため)の参照である。 上記から分かるように、これらの作業パラメータは、PUT-INSIDEの作業のロボットシステム1の実現に関連する様々な情報ピースを提供する。従って、異なる作業モジュール201は、作業パラメータの異なる集合を有することができる。] [0029] 作業定義付けステップでは、オペレータが、作業モジュールライブラリ200から作業モジュール201を選択した後に、オペレータは、作業モジュール201の全ての作業パラメータを特定する必要がある。これは、ソフトウェアシステム40がAutoCAD(登録商標)により提供されるもののようなグラフィック環境を提供すると仮定して、以下のように達成することができる。例えば、オペレータが、作業モジュールPUT-INSIDEを選択後、ソフトウェアシステム400は、PUT-INSIDEの作業パラメータに基づいて、オペレータに以下の各作業パラメータを特定するように要求する。 −オペレータは、仮想対象物Aをtarget1として特定する(グラフィック環境で、名称Aを入力することにより、又は仮想対象物Aをクリックすることにより)。 −オペレータは、仮想対象物Bをtarget2として特定する(グラフィック環境で、名称Bを入力することにより、又は仮想対象物Bをクリックすることにより)。 −オペレータは、仮想対象物Aの円柱本体の真ん中の斜線部分(図2dを参照)を、グラフィック環境でいくつかのポイント・アンド・クリックの操作により、op3(すなわち、target1を保持する場所)として特定する。 −オペレータは、仮想対象物Aの一端の斜線部分を、グラフィック環境でいくつかのポイント・アンド・クリックの操作により、op4(すなわち、target1のどちらの端部を最初にtarget2の中に入れるか)として特定する。 −オペレータは、仮想対象物Bの頂部側の斜線部分を、グラフィック環境でいくつかのポイント・アンド・クリックの操作により、op5(すなわち、target2のどちら側にtarget1を挿入するか)として特定する。 −オペレータは、破線の矢部をtarget2の軸線として特定し、その軸線に対してtarget1を挿入する角度の値を入力する。 関連技術の人々にとって、残りの詳細は、全く単純明快なため、省略する。] 図2d [0030] 要するに、作業定義付けステップの間及びロボットシステム1により行うべき各作業に対し、オペレータは、作業モジュールライブラリ200から少なくとも1つの作業モジュール201を選択する。それから、選択した作業モジュール201の所定の作業パラメータにより、ソフトウェアシステム400は、オペレータにこれらの作業パラメータを特定することを要求する。これらの作業パラメータは、操作すべき1つ以上の目的物(すなわち、仮想対象物)及びその作業に関連する仮想対象物についての追加の情報ピースを含む。上記のように、これらの作業パラメータの明細は、CADシステムのようなグラフィック環境で、全て達成することができる。] [0031] なお、作業モジュール201を実装するのには、様々な異なる方法があり、作業モジュール201をどのように実装するかに応じて、作業モジュール201により規定され、作業パラメータにより特定されるように、作業を行なうロボットシステム1に関して、様々な方法もある。一実施形態では、各作業モジュール201は、ソフトウェアのルーチン又は関数とし(従って、作業モジュールライブラリ200はプログラムライブラリである)、作業パラメータは、ルーチン又は関数に渡される引数である。ロボットシステム1に、作業定義付けステップで生成した特定の作業パラメータと一緒に、1つ以上の作業モジュール201を与えると、ロボットシステム1の計算ハードウェア20は、ルーチン又は関数を含むコードを実行する。代替の実施形態では、上記のルーチン又は関数は、ハイレベルなハードウェアに依存しない命令を含み、これらの命令は、ロボットシステム1の操作ハードウェア及び計算ハードウェア20に関するハードウェア細部の知識を有するコンパイラーにより、実行可能コードにコンパイルしなければならない。] [0032] 作業モジュール201のトランスレーション又はコンパイレーションは、本発明の主題ではなく、類似の主題に取り組むかなりの数の教示がある。例えば、いずれもMurray, IV, et al.による米国特許第6,889,118号明細書、米国特許第7,076,336号明細書及び米国特許第7,302,312号明細書は、基盤となるハードウェアがロボットの制御ソフトウェアに対して透過的になるように、ロボットの制御ソフトウェアとロボットの操作ハードウェアとの間にハードウェア抽象化レイヤ(HAL)を提供している。これは、有利なことに、ロボットの制御ソフトウェアをロボットに依存しない方法で書くことを可能にする。従って、作業モジュール201の詳細は、前記ロボットに依存しない方法でプログラムされることを想像することができる。さらに別の実施形態では、作業モジュール201は、その作業パラメータの明細(すなわち、値)だけを全て記録する。作業モジュール201は、高レベル命令又は低レベルの実行コードのどれも含まない。作業モジュール201と、作業パラメータのその記録した明細とに基づく作業をどのように行なうかを決定するのは、ロボットシステム1である。以前の実施形態では、何を行なうかを決定する知能は、作業モジュールそのものに組み込んでいるが、現行の実施形態の場合には、その知能は、ロボットシステム1に完全に組み込む。想像できるように、知能の一部を作業モジュール201に埋め込み、知能の一部を、ロボットシステム1に組み込むいくつかの実施形態もある。] [0033] たとえいかに作業モジュールが実装しようとも、作業モジュール及びその作業パラメータは、仮想対象物の定義付け及びその幾何学的パラメータと共に、ロボットシステム1が作業を知的に行なわせるための適切な情報を提供すべきである。図2eと図2fとを比較されたい。図2eに例示するように、仮想対象物Aが仮想対象物Bから遠く離れている際には、ロボットシステム1が、仮想対象物Aと仮想対象物Bとの間の距離が十分であると判断し、かつ、仮想対象物Aを直接持ち上げることができると判断することができるので、ロボットシステム1は、短い軌道をとるように計画すべきである。他方、図2fに例示するように、仮想対象物Aが仮想対象物Bのすぐ隣にある際には、ロボットシステム1が、仮想対象物Aと仮想対象物Bとの間の距離が十分でないと判断し、かつ、仮想対象物Aを最初に仮想対象物Bから離すように動かさなければならないと判断するので、ロボットシステム1は、もっと遠回りの軌道をとるように計画すべきである。ロボットシステム1がこのような知的判断及び軌道計画をすることができる理由は、仮想対象物A及びBの幾何学的パラメータ(長さ、高さ等のような)が必要な知識を提供するからである。作業パラメータも、同様に、ロボットシステム1が、仮想対象物Aのどこをつかんで、仮想対象物Aをどのようにして仮想対象物Bの中へ入れるのかが分かるように、他の関連情報を提供する。なお、このような知的判断及び軌道計画は、本発明の主題ではなく、知的ロボット及び人口知能のような領域では多くの教示がある。] 図2e 図2f [0034] ロボットシステム1が教示された作業を実際の対象物に行なうために、ロボットシステム1は、実際の対象物を定義付けされた仮想対象物に関連付けなければならない。言い換えれば、ロボットシステム1が実際の対象物を見たら、ロボットシステム1は、その実際の対象物を定義付けされた仮想対象物の1つとして「認識」しなければならない。作業を受ける実際の対象物の形状が十分に異なり、それらを見分けるのに、色や質感又は他の特徴を当てにする必要がない場合、仮想対象物に関連付けられる基本の又は複雑な形状及びそれらの幾何学的パラメータは、3Dレーザスキャナ又はカメラのようなロボットシステム1の光学的認識手段により、ロボットシステム1が実際の対象物を認識するには、既に十分である。3Dレーザスキャナを用いて、ロボットシステム1は、実際の対象物の三次元データを得ることができる。次に、その三次元データを、仮想対象物の関連形状及び幾何学的パラメータと比較して、どの仮想対象物が実際の対象物に最も似ているかを調べることができる。] [0035] ロボットシステム1しかカメラを有していないが、前記の認識は、それでも可能である。ロボットシステム1が、画像取得装置30により、実際の対象物を見ると、最初に実際の対象物の1つ以上の取得した画像を用いて実際の対象物の三次元モデルを構築し、それからその三次元モデルを仮想対象物の関連形状及び幾何学的パラメータと比較する。1つ以上の二次元画像から三次元モデルを構築することについては、コンピュータグラフィックス、画像処理等の分野において、既にかなりの数の教示がある。例えば、David G. Loweは、単一のグレースケール画像の未知の観点から三次元対象物を認識することができるコンピュータ・ビジョン・システムを教示している("Three-dimensional object recognition from single two-dimensional images," Artificial Intelligence, 31, 3 (March 1987), pp. 355-395)。] [0036] しかしながら、認識率をさらに向上するため、又は、ほぼ類似の形状を有する実際の対象物を見分けるために、本発明は、追加の画像関連付けステップを提供する。このステップでは、処理すべき各実際の対象物に対して、ロボットシステム1の画像取得装置30から見たものと必ずしも同一ではない視点から画像取得した、実際の対象物の少なくとも二次元画像301を提供し、実際の対象物に対応する定義付けした仮想対象物に関係付ける。これらの画像は、通常、事前に画像取得され、図1bに例示するようなソフトウェアシステム40の一部である画像ライブラリ300に保存される。言い換えれば、処理すべき各実際の対象物に対して(従って、定義付けした各仮想対象物に対して)、画像ライブラリ300には、少なくとも実際の対象物の画像301がある。前述の例に従って、画像関連付けステップは、疑似コードを用いて以下のように表わすことができる。 Image Association(画像の関連付け) Image(画像)1:A; Image(画像)2:B. ここで、図2gに示すように、Image1は、仮想対象物Aに対応する実際の対象物600の二次元画像であり、一方、Image2は、仮想対象物Bに対応する実際の対象物700の二次元画像である。代替の実施形態では、画像関連付けステップは、実際には疑似コードにより以下のように表わされるように、対象物定義付けステップと組み合わせる。 Virtual Object A:CONE+CYLINDER=Image1; B:POT=Image2;] 図1b [0037] 上記のように、ロボットシステム1は、その作業の間、常に実際の対象物を「認識」しようとする。画像関連付けステップがなければ、ロボットシステム1は、仮想対象物に関連する基本の又は複雑な形状及びそれらの幾何学的パラメータを当てにすることができるだけである。画像関連付けステップがあれば、実際の対象物の認識は、(画像取得装置30による)実際の対象物のいくつかの取得画像と、何らかの画像処理手段を用いて全ての仮想対象物に関連付けて事前に画像取得した画像とを整合させることにより、さらにサポートされる。その関連付けられた画像が実際の対象物の取得画像に最も似ている1つの仮想対象物がある場合に、その実際の対象物は、特定の仮想対象物として「認識」される。] [0038] 画像処理手段は本発明の主題ではなく、二次元画像を用いて三次元対象物を同定することに対応する多くの教示がある。例えば、Daniel P. Huttenlocher et al.は、先験的に知られる観点でのポイント間の一致を必要とせずに、格納済み対象物の二次元の図を未知の図と比較することにより、対象物を認識するアルゴリズムを教示している("Recognizing Three-Dimensional Objects by Comparing Two-Dimensional Images," cvpr, pp.878, 1996IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'96), 1996)。] [0039] なお、対象物モデルライブラリ100、作業モジュールライブラリ200及び画像ライブラリ300は、通常、オペレータがソフトウェアシステム40を用いて、ロボットシステム1に何をさせるべきかを教示するタスク記述(図2gを参照)を生成する前に、ソフトウェアシステム40に予めインストールしておく。しかしながら、対象物モデルライブラリ100及び作業モジュールライブラリ200は、いくつかの内臓型(基本形状のような)対象物モデル101及び作業モジュール201を有している。対照的に、画像ライブラリ300における画像301は、対象物定義付けステップ又は画像関連付けステップの間に、先立って準備するか、又は、後に加えることができる。なお、画像301は、ロボットシステム1の画像取得装置30以外の別個の画像取得装置により、撮ることができる。] 図2g [0040] なお、本発明は、ロボットシステムが少なくとも1つの実際の対象物の処理の仕方が分かるように、光学的認識手段を有するロボットシステムに対するタスク記述を生成することに関するものである。しかしながら、タスク記述に基づいて、ロボットシステムが実際にどのようにタスクを行うかは、本発明の主題ではないので、その詳細のほとんどは、本明細書では省略する。想像できるように、タスクを行うのには様々な方法がある。例えば、実際の対象物を認識するのに、あるロボットシステムは、予め撮った画像を単に及び完全に当てにすることができ、一方、ほかのロボットシステムは、認識のより高い成功率を達成するのに、仮想対象物の幾何学的情報を既知の先験的なものとして追加して利用することができる。ロボットシステムの作業中のタスク記述の実行についての詳細を省いたけれども、タスク記述で特定されているように、作業の首尾良い引き受けを保証するために、タスク記述に含まれる情報を活用する方法についての多くの従来の教示がある。] [0041] 図3aは、本発明の一実施形態によるロボットシステム1に1つ以上の実際の対象物を取り扱うことを教示する(すなわち、タスク記述を生成する)ステップを示すフロー図である。例示するように、ステップ500では、対象物モデルライブラリ100及び作業モジュールライブラリ200を提供する。ロボットシステム1により処理すべき各実際の対象物に対して、その実際の対象物に少なくとも幾何学的に類似する三次元形状を定義付けする少なくとも1つの対象物モデル101があり、又は、2つ以上の定義付け形状を組み合わせて、実際の対象物に少なくとも幾何学的に類似させることができる、2つ以上の対象物モデル101がある。各対象物モデル101は少なくとも1つの幾何学的パラメータを含む。また、実際の対象物に行うべき各作業に対しては、作業モジュールライブラリ200に含まれる少なくとも1つの作業モジュール201がある。各作業モジュール201は、少なくとも1つの仮想対象物を作業のターゲットとして特定するため、及び、作業に関連する仮想対象物についての追加の情報ピースを特定するための、多くの所定の作業パラメータを有する。] 図3a [0042] それから、ステップ510にて、処理すべき各実際の対象物に対して、仮想対象物を定義付けする。仮想対象物の定義付けは、仮想対象物に対する固有の名称、対象物モデルライブラリ100に含まれる1つの対象物モデル101又は多くの対象物モデルの組み合わせの参照、及び、実際の対象物に従う対象物モデルに対する幾何学的パラメータ値の明細を含む。このステップの後に、処理すべき各実際の対象物は、実際には、その実際の対象物に実質上及び幾何学的に類似する仮想対象物により表わされる。] [0043] その後、ステップ520にて、実際の対象物に行なう各作業に対して、その作業を定義付けする。この作業の定義付けは、作業モジュールライブラリ200に含まれる作業モジュール201の参照、及び作業モジュール201の所定の作業パラメータの明細を含む。このステップの後に、ロボットシステム1により行なうべき各作業は、作業モジュール201及びその特定の作業パラメータにより記述される。] [0044] 最後に、ステップ530では、ステップ510で定義付けした各仮想対象物に対して、その仮想対象物により表わされる実際の対象物を前もって撮った少なくとも1つの二次元画像を提供し、その仮想対象物に関係付ける。このステップの後に、ロボットシステム1用のタスク記述は、図2gに示すように、完了し、そのタスク記述は、処理すべき実際の対象物に対応する1つ以上の仮想対象物の定義付け、実際の対象物に行うべき作業に相当する1つ以上の作業の定義付け、及び、対応する仮想対象物に関連付けられる実際の対象物の1つ以上の画像を含む。] 図2g [0045] 図3bは、本発明の別の実施形態の主要なステップを示す。本実施形態は、図3aの実施形態と以下の2点を除いて非常に類似している。 (1)二次元画像301を、最初のステップ800で、前もって準備して、画像ライブラリに与える。 (2)画像301を仮想対象物に関連付けることを仮想対象物定義付けステップ810で、一緒に行う。 作業定義付けステップ820は、図3aの実施形態のステップ520と同一である。] 図3a 図3b [0046] 本発明は、上記好適な実施形態を参照して説明したが、それらの説明した詳細に本発明を限定するものではない。前述の説明に様々な置換及び修正が示唆され、当業者には、他のことを思い付くであろう。従って、全てのそのような置換及び修正は、添付の特許請求の範囲に規定されるように、本発明の範囲内に含むことを意味する。]
权利要求:
請求項1 少なくとも1つの実際の対象物に少なくとも1つの作業を行なうように、光学的認識手段を有しているロボットシステムに教示する方法であって、前記方法は、三次元形状を表わす少なくとも1つの対象物モデルを含んでいる対象物モデルライブラリを提供し、かつ、作業を記述する少なくとも1つの作業モジュールを含んでいる作業モジュールライブラリを提供するステップであって、各対象物モデルは前記三次元形状の複数の幾何学的パラメータを含み、各作業モジュールは、作業すべき少なくとも1つの目的物及び前記作業に関連する複数の情報ピースについての複数の作業パラメータを含む、ステップと、前記ロボットシステムにより処理すべき実際の対象物を表わす仮想対象物を定義付けするステップであって、該仮想対象物の定義付けは、固有の名称及び前記対象物モデルライブラリの対象物モデルに関連付けられ、前記対象物モデルにより記述される前記三次元形状は、前記実際の対象物に実質上、かつ、幾何学的に類似し、前記対象物モデルの前記複数の幾何学的パラメータは、前記実際の対象物に従って特定される、ステップと、少なくとも1つの前記実際の対象物に、前記ロボットシステムにより行なうべき作業を定義付けするステップであって、前記作業の規定は、前記作業モジュールライブラリの作業モジュールに関連付けられ、前記作業パラメータの前記ターゲットは、前記実際の対象物を表わす前記仮想対象物の前記固有の名称であるように特定され、前記作業パラメータの前記複数の情報ピースは、前記実際の対象物に従って特定される、ステップと、を有する、ロボットシステムに教示する方法。 請求項2 前記光学的認識手段は、3Dレーザスキャナを含む、請求項1に記載の方法。 請求項3 前記光学的認識手段は、画像取得装置を含む、請求項1に記載の方法。 請求項4 前記ロボットシステムにより処理すべき前記実際の対象物を前もって撮像した少なくとも1つの二次元画像を提供するステップと、前記二次元画像を前記実際の対象物を表わす前記仮想対象物に関連付ける、ステップとを、さらに有する、請求項3に記載の方法。 請求項5 前記仮想対象物を定義付けする際に、前記二次元画像を、前記仮想対象物と関連付ける、請求項4に記載の方法。 請求項6 前記二次元画像は、前記ロボットシステムの前記画像取得装置により画像取得される、請求項4に記載の方法。 請求項7 前記ロボットシステムにより処理すべき前記実際の対象物を前もって撮像した少なくとも1つの二次元画像を含む画像ライブラリを提供するステップと、前記二次元画像を前記実際の対象物を表わす前記仮想対象物に関連付ける、ステップとを、さらに有する、請求項3に記載の方法。 請求項8 前記仮想対象物を定義付けする際に、前記二次元画像を、前記仮想対象物に関連付ける、請求項7に記載の方法。 請求項9 前記二次元画像は、前記ロボットシステムの前記画像取得装置により画像取得される、請求項7に記載の方法。 請求項10 前記方法は、グラフィック環境で行われる、請求項1に記載の方法。 請求項11 前記グラフィック環境は、前記ロボットシステムで実行される、請求項10に記載の方法。 請求項12 前記三次元形状は、基本形状である、請求項1に記載の方法。 請求項13 前記ロボットシステムにより処理すべき実際の対象物に対する仮想対象物を定義付けするステップであって、前記仮想対象物の定義付けは、固有の名称及び前記対象物モデルライブラリの少なくとも2つの対象物モデルに関連付け、前記対象物モデルにより記述される三次元形状は、一緒に組み合わせた後に、前記実際の対象物に実質上、かつ、幾何学的に類似し、前記対象物モデルの前記複数の幾何学的パラメータは、前記実際の対象物に従って特定される、ステップを、さらに有する、請求項1に記載の方法。 請求項14 前記三次元形状の少なくとも1つは、基本形状である、請求項13に記載の方法。
类似技术:
公开号 | 公开日 | 专利标题 US20200078938A1|2020-03-12|Object Pickup Strategies for a Robotic Device JP6374993B2|2018-08-15|複数の吸着カップの制御 US20200215686A1|2020-07-09|Deep machine learning methods and apparatus for robotic grasping Eppner et al.2016|Lessons from the amazon picking challenge: Four aspects of building robotic systems. KR101631033B1|2016-06-15|산업용 로봇을 프로그래밍하기 위한 방법 및 관련 산업용 로봇 Katz et al.2008|Manipulating articulated objects with interactive perception Lacevic et al.2013|Safety assessment and control of robotic manipulators using danger field Kragic et al.2002|Survey on visual servoing for manipulation Alatartsev et al.2015|Robotic task sequencing problem: A survey US9014857B2|2015-04-21|Methods and computer-program products for generating grasp patterns for use by a robot JP4115946B2|2008-07-09|移動ロボットとその自律走行システム及び方法 Kelly et al.2000|Stable visual servoing of camera-in-hand robotic systems Sadeghi et al.2018|Sim2real viewpoint invariant visual servoing by recurrent control US20160023352A1|2016-01-28|SURROGATE: A Body-Dexterous Mobile Manipulation Robot with a Tracked Base KR101479233B1|2015-01-05|로봇 및 그 협조작업 제어방법 JP4494022B2|2010-06-30|工業ロボットをプログラミングするための方法およびシステム Schwarz et al.2017|Nimbro picking: Versatile part handling for warehouse automation JP2020512644A|2020-04-23|ロボット経路計画のためのシステムおよび方法 Wang et al.2010|A hybrid visual servo controller for robust grasping by wheeled mobile robots DE102015002348B4|2018-02-01|Robotersteuerung mit der Funktion, den Lehrvorgang zu vereinfachen und die Bewegungsfähigkeit des Roboters zu verbessern DK2285537T3|2016-04-11|Device and method for computer-assisted generation of a manipulatorbane Pan et al.2012|Recent progress on programming methods for industrial robots Righetti et al.2014|An autonomous manipulation system based on force control and optimization CA2928645A1|2015-04-30|Image-based trajectory robot programming planning approach Makris et al.2014|Intuitive dual arm robot programming for assembly operations
同族专利:
公开号 | 公开日 TW201027288A|2010-07-16| EP2377061A1|2011-10-19| US20100179689A1|2010-07-15| CN102177478A|2011-09-07| KR20110033235A|2011-03-30| WO2010079378A1|2010-07-15|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 JP2004188533A|2002-12-10|2004-07-08|Toyota Motor Corp|対象物の取扱い推定方法および取扱い推定装置| JP2004268148A|2003-03-05|2004-09-30|Matsushita Electric Ind Co Ltd|生活空間用の物品移動システム、及びロボット操作装置| JP2005088146A|2003-09-18|2005-04-07|National Institute Of Advanced Industrial & Technology|物体処理システム、物体処理方法及びロボット| JP2006102881A|2004-10-06|2006-04-20|Nagasaki Prefecture|把持ロボット装置| JP2007319973A|2006-05-31|2007-12-13|Hitachi Ltd|ロボット装置| JP2008015683A|2006-07-04|2008-01-24|Fanuc Ltd|ロボットプログラムを作成するための装置、プログラム、記録媒体及び方法| JP2008049459A|2006-08-28|2008-03-06|Toshiba Corp|マニピュレータ制御システム、マニピュレータ制御方法およびプログラム| JP2008068348A|2006-09-13|2008-03-27|National Institute Of Advanced Industrial & Technology|ロボット作業教示システムおよびロボットに対する作業教示方法| JP2009214212A|2008-03-10|2009-09-24|Toyota Motor Corp|動作教示システム及び動作教示方法|WO2019038945A1|2017-08-23|2019-02-28|Kyoto Robotics株式会社|ピッキングシステム|EP0477398B1|1990-09-25|1994-12-14|Dr. Johannes Heidenhain GmbH|Verfahren für die Bearbeitung von Werkstücken mit numerisch gesteuerten Maschinen| US6889118B2|2001-11-28|2005-05-03|Evolution Robotics, Inc.|Hardware abstraction layer for a robot| JP4492036B2|2003-04-28|2010-06-30|ソニー株式会社|画像認識装置及び方法、並びにロボット装置| JPWO2004106009A1|2003-06-02|2006-07-20|松下電器産業株式会社|物品取扱いシステムおよび物品取扱いサーバ| WO2006006624A1|2004-07-13|2006-01-19|Matsushita Electric Industrial Co., Ltd.|物品保持システム、ロボット及びロボット制御方法| US8214079B2|2007-03-30|2012-07-03|Sungkyunkwan University Foundation For Corporate Collaboration|Central information processing system and method for service robot having layered information structure according to recognition and reasoning level| JP2008296330A|2007-05-31|2008-12-11|Fanuc Ltd|ロボットシミュレーション装置|US9539510B2|2010-04-30|2017-01-10|Microsoft Technology Licensing, Llc|Reshapable connector with variable rigidity| IN2014CN02969A|2011-09-23|2015-07-03|Bic Soc|| JP2013184257A|2012-03-08|2013-09-19|Sony Corp|ロボット装置及びロボット装置の制御方法、並びにコンピューター・プログラム| JP5965859B2|2013-03-28|2016-08-10|株式会社神戸製鋼所|溶接線情報設定装置、プログラム、自動教示システム、および溶接線情報設定方法| US9492923B2|2014-12-16|2016-11-15|Amazon Technologies, Inc.|Generating robotic grasping instructions for inventory items| JP6348097B2|2015-11-30|2018-06-27|ファナック株式会社|ワーク位置姿勢算出装置およびハンドリングシステム| JP6710946B2|2015-12-01|2020-06-17|セイコーエプソン株式会社|制御装置、ロボットおよびロボットシステム| CN105500381A|2016-02-05|2016-04-20|中国科学院自动化研究所|通用模块化双臂服务机器人平台及系统| TWI650626B|2017-08-15|2019-02-11|由田新技股份有限公司|基於三維影像之機械手臂加工方法及系統| US10682774B2|2017-12-12|2020-06-16|X Development Llc|Sensorized robotic gripping device| US10792809B2|2017-12-12|2020-10-06|X Development Llc|Robot grip detection using non-contact sensors|
法律状态:
2012-06-22| A977| Report on retrieval|Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120622 | 2012-07-04| A131| Notification of reasons for refusal|Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120703 | 2012-11-28| A02| Decision of refusal|Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121127 |
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|